The present invention generally relates to a database for use in the design of an integrated circuit device and to a design method using such a database. More particularly, the present invention relates to design technology to cope with system-on-chip implementation.
A semiconductor device for an electronic unit has been fabricated until just recently by forming individual types of LSI""s such as memories and processors on respective semiconductor chips and then mounting and interconnecting these chips on a motherboard like a printed wiring board.
Over the past few years, however, a semiconductor device is increasingly required to reduce the overall size, power dissipation and fabrication cost thereof to further broaden the industrial applicability of an electronic unit including such a device. Among other things, a consumer electronic unit for use in digital information processing has to meet all of these requirements more often than any other electronic unit. Responsive to such a demand from the electronics industry, the prime target of semiconductor technology is going to shift from memories to system LSI""s.
Specifically, a system LSI is a single-chip implementation including memories and various types of logic circuits on a single chip. To form a system-on-chip, not only the technology of forming devices like transistors with dissimilar structures on a common substrate, but also the design technology thereof should be greatly innovated.
Thus, according to a suggested technique of designing a system-on-chip, a database is prepared in advance to design an arbitrary block consisting of a great number of cells, each implementing a required function, e.g., a so-called xe2x80x9cfunctional blockxe2x80x9d. By using such a database, any desired system LSI can be allegedly designed as a combination of blocks. In such a case, a specific physical structure for performing an intended function has been defined in advance for each block. Thus, in the physical design of an overall semiconductor device, only the interconnections among these functional blocks and peripheral circuitry have to be newly designed. In this manner, the conventional method tries to increase the design efficiency considerably.
The conventional design procedure, however, is too simplified to make flexible use of the blocks. For example, it is impossible to selectively use just some components of a certain block. This is because the conventional design procedure only defines which blocks should be used and how and where these blocks should be placed and interconnected. In addition, these blocks are supposed to be customized at a lower level, i.e., logic synthesis or layout design level. Accordingly, various demands on a system LSI, like downsizing, might not be satisfactorily met by such an overly simple design procedure.
A general object of the present invention is constructing a novel design system that can substitute for the conventional block-based design method.
A more particular object of the present invention is providing a database, in which data about various components is stored as a collection of virtual cores in a flexibly usable state, for use in the design of an integrated circuit device.
Another specific object of the present invention is providing a method for designing an integrated circuit device using such a database.
A first exemplary database according to the present invention includes a plurality of VC clusters for storing therein data needed in designing an integrated circuit device. Each said VC cluster includes: a specification/arhitecture VC for constructing the integrated circuit device; and an RTL-VC for storing therein data at an RT level required for meeting a specification and an architecture represented by the data stored on the specification/architecture VC.
According to the first database, it is possible to provide a design environment, in which the data stored on respective VCs within a VC cluster can be used flexibly at the higher-order specification/architecture and RT levels, not at the lower-order levels for circuit design or layout.
In one embodiment of the present invention, the specifcation/architecture VC is preferably classified into: a specification VC for storing therein data at the specificaton level; and an architecture VC for storing therein data at the architectural level required for meeting the specification represented by the data stored on the specification VC.
In another embodiment of the present invention, the database preferably further includes a performance index including a plurality of parameters used for evaluating the performance of the integrated circuit device. The performance index is represented in the specification/architecture VC as a first range within a multi-dimensional space using the parameters as coordinates. The performance index is represented in the RTL-VC as a second range within a multidimensional space or a point using the parameters as coordinates. The second range is narrower than the first range.
A second exemplary database according to the present invention includes a plurality of VCs for storing therein data needed in designing an integrated circuit device. The database includes an instance manager for managing instances obtained by replacing respective variables of the data stored on the VCs with associated constants.
According to the second database, VC data can be managed smoothly.
A third exemplary database according to the present invention includes a specification VC for storing therein data at a specification level needed in designing an integrated circuit device. The specification VC stores: design data describing specifications required for constructing the integrated circuit device; verification data used for checking the specifications described by the design data; and performance data used for evaluating the performance of the integrated circuit device.
According to the third database, it is possible to confirm even at the specification level that the specification data stored on the VCs is not out of a performance range required for the system. Thus, design and verification will not be performed in vain at upcoming lower levels.
A fourth exemplary database according to the present invention includes an architecture VC for storing therein data at an architectural level needed in designing an integrated circuit device. The data stored on the architecture VC is classified into data about hardware-implementable architectures and data about software implementable architectures.
According to the fourth database, hardware/software cooperative design or verification at the architectural level is enabled. Accordingly, a database best suited to automated design is obtained.
A fifth exemplary database according to the present invention includes a VC cluster made up of a plurality of VCs for storing therein data needed in designing an integrated circuit device. The database includes a management table Indicating a common characteristic or function portion among the data stored on the respective VCs within the VC cluster.
According to the fifth database, search can be performed easily and quickly to know whether or not interface, clock, power supply or resource can be shared.
A first exemplary method according to the present invention is adapted to design an integrated circuit device using a database including a plurality of VCs for storing therein data needed in designing the integrated circuit device. The method includes the step of generating instances by replacing respective variables of the data stored on the VCs with associated constants.
According to the first method, instances can be generated adaptively to external information, thus improving utility and efficiency.
In one embodiment of the present invention, the instances are preferably generated by replacing a name of a module, which is one of the variables of the data stored on the VCs, with an associated constant.
A second exemplary method according to the present invention is adapted to design an integrated circuit device using a database including a specification VC for storing therein data at a specification level needed in designing the integrated circuit device. The method includes the steps of; generating instances by changing the data stored on the specification VC into specific one; and storing the instances generated on the database.
According to the second method, instances can be generated at the specification level adaptively to external information, thus improving utility and efficiency.
A third exemplary method according to the present invention is adapted to design an integrated circuit device using a database including: a specification VC for storing therein data at a specification level needed in designing the integrated circuit device; and an architecture VC for storing thereon data at an architectural level needed for meeting a specification represented by the data stored on the specification VC. The method includes the step of deleting an unnecessary portion of the data at the architectural level.
According to the third method, the quality of the integrated circuit device can be improved efficiently.
A fourth exemplary method according to the present invention is adapted to design an integrated circuit device using a database including a plurality of VCs for storing therein data needed in designing the integrated circuit device. The method includes the step of generating correlated information by extracting a portion sharable among at least some of the VCs from the data stored on the VCs.
According to the fourth method, the interface, clock, power supply or resource can be shared by utilizing the correlated information among the respective VCs during the design process.
A fifth exemplary method according to the present invention is adapted to design an integrated circuit device using a database including an architecture VC, on which data at an architectural level needed in designing the integrated circuit device is classified into data about hardware-implementable architectures and data about software-implementable architectures. The method includes the step of performing hardware-software cooperative design or verification.
According to the fifth method, an easily automatable design method is provided while using VCs.
A sixth exemplary method according to the present invention is adapted to design an integrated circuit device using a database including a VC cluster. The VC cluster includes: a specification/arhitecture VF for storing therein data at specification and architectural levels needed for constructing the integrated circuit device; and an RTL-VC for storing therein data at an RT level required for meeting a specification and an architecture represented by the data stored on the specification/architecture VC. The method includes the step of generating a new VC by using the data stored on the VCs within the VC cluster.
According to the sixth method, the design data stored on respective VCs within the VC cluster is flexibly reusable.